ARM: Avoid compiler optimization for readb, writeb and friends.
authorAlexander Holler <[email protected]>
Sun, 9 Jan 2011 12:19:44 +0000 (12:19 +0000)
committerAlbert Aribaud <[email protected]>
Tue, 1 Feb 2011 23:54:44 +0000 (00:54 +0100)
commit3c0659b535b075be124c3d2a0714e55e65c46737
treee8d99c2dff1e0d6afdaf83b6b5301dbe47ce7e5b
parent3c152165c78408e44845f2d08469db887f050e43
ARM: Avoid compiler optimization for readb, writeb and friends.

gcc 4.5.1 seems to ignore (at least some) volatile definitions,
avoid that as done in the kernel.

Reading C99 6.7.3 8 and the comment 114) there, I think it is a bug of that
gcc version to ignore the volatile type qualifier used e.g. in __arch_getl().
Anyway, using a definition as in the kernel headers avoids such optimizations when
gcc 4.5.1 is used.

Maybe the headers as used in the current linux-kernel should be used,
but to avoid large changes, I've just added a small change to the current headers.

Signed-off-by: Alexander Holler <[email protected]>
Signed-off-by: Dirk Behme <[email protected]>
Signed-off-by: Wolfgang Denk <[email protected]>
Cc: Alessandro Rubini <[email protected]>
Tested-by: Thomas Weber <[email protected]>
Acked-by: Alexander Holler <[email protected]>
Tested-by: Alexander Holler <[email protected]>
arch/arm/include/asm/io.h